[INFO] cloning repository https://github.com/xanahopper/leetcode
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/xanahopper/leetcode" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxanahopper%2Fleetcode", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxanahopper%2Fleetcode'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a7a03187f6433f84fd410505a41aa28ad4f4190c
[INFO] checking xanahopper/leetcode against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxanahopper%2Fleetcode" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/xanahopper/leetcode on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/xanahopper/leetcode
[INFO] finished tweaking git repo https://github.com/xanahopper/leetcode
[INFO] tweaked toml for git repo https://github.com/xanahopper/leetcode written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/xanahopper/leetcode already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded leetcode_test v0.1.1
[INFO] [stderr]   Downloaded leetcode_prelude v0.2.2
[INFO] [stderr]   Downloaded itoa v0.4.4
[INFO] [stderr]   Downloaded ryu v1.0.2
[INFO] [stderr]   Downloaded serde_json v1.0.44
[INFO] [stderr]   Downloaded serde v1.0.104
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] cf75eead7bbcf2ae5877a61b90475c0015d9192b721224fa67b8484f3cb1a0af
[INFO] running `Command { std: "docker" "start" "-a" "cf75eead7bbcf2ae5877a61b90475c0015d9192b721224fa67b8484f3cb1a0af", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cf75eead7bbcf2ae5877a61b90475c0015d9192b721224fa67b8484f3cb1a0af", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cf75eead7bbcf2ae5877a61b90475c0015d9192b721224fa67b8484f3cb1a0af", kill_on_drop: false }`
[INFO] [stdout] cf75eead7bbcf2ae5877a61b90475c0015d9192b721224fa67b8484f3cb1a0af
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5378e6813d15416959d12614954df1bced3b9bbb5bcdd7274f0c77a9b6b2c385
[INFO] running `Command { std: "docker" "start" "-a" "5378e6813d15416959d12614954df1bced3b9bbb5bcdd7274f0c77a9b6b2c385", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.104
[INFO] [stderr]    Compiling ryu v1.0.2
[INFO] [stderr]    Compiling itoa v0.4.4
[INFO] [stderr]    Compiling serde_json v1.0.44
[INFO] [stderr]    Compiling leetcode_test v0.1.1
[INFO] [stderr]     Checking leetcode_prelude v0.2.2
[INFO] [stderr]     Checking leetcode v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_719.rs:66:26
[INFO] [stdout]    |
[INFO] [stdout] 66 |                 count += (j - i - 1);
[INFO] [stdout]    |                          ^         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 66 -                 count += (j - i - 1);
[INFO] [stdout] 66 +                 count += j - i - 1;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `btree`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_508.rs:36:24
[INFO] [stdout]    |
[INFO] [stdout] 36 | use leetcode_prelude::{btree, TreeNode};
[INFO] [stdout]    |                        ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_508.rs:59:33
[INFO] [stdout]    |
[INFO] [stdout] 59 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::FromIterator`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_508.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 90 | use std::iter::FromIterator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `btree`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_513.rs:36:24
[INFO] [stdout]    |
[INFO] [stdout] 36 | use leetcode_prelude::{btree, TreeNode};
[INFO] [stdout]    |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `btree`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_515.rs:33:24
[INFO] [stdout]    |
[INFO] [stdout] 33 | use leetcode_prelude::{btree, TreeNode};
[INFO] [stdout]    |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/leetcode/weekly/weekly_295_1.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 |             });;
[INFO] [stdout]    |                ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_295_2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `max`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_296_4.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cmp::{max, min};
[INFO] [stdout]   |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LinkedList`, `VecDeque`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_296_4.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::{LinkedList, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::min`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_297_2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cmp::min;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::leetcode::Solution`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_297_4.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::leetcode::Solution;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `linkedlist`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_300_2.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use leetcode_prelude::{linkedlist, ListNode};
[INFO] [stdout]   |                        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::BTreeSet`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_301_2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::BTreeSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::FromIterator`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_301_2.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::iter::FromIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_303_4.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::FromIterator`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_303_4.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::iter::FromIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeMap`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_303_3.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::{BTreeMap, BTreeSet, HashMap};
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::leetcode::Solution`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_303_3.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::leetcode::Solution;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_81_2.rs:29:27
[INFO] [stdout]    |
[INFO] [stdout] 29 |                 result += (sum - group[&parent]);
[INFO] [stdout]    |                           ^                    ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 29 -                 result += (sum - group[&parent]);
[INFO] [stdout] 29 +                 result += sum - group[&parent];
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `btree`
[INFO] [stdout]  --> src/leetcode/biweekly/biweekly_82_1.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use leetcode_prelude::{btree, TreeNode};
[INFO] [stdout]   |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Read`, `stdin`
[INFO] [stdout]  --> src/codeforces/scanner.rs:1:15
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::io::{Read, stdin};
[INFO] [stdout]   |               ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_719.rs:66:26
[INFO] [stdout]    |
[INFO] [stdout] 66 |                 count += (j - i - 1);
[INFO] [stdout]    |                          ^         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 66 -                 count += (j - i - 1);
[INFO] [stdout] 66 +                 count += j - i - 1;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `btree`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_513.rs:36:24
[INFO] [stdout]    |
[INFO] [stdout] 36 | use leetcode_prelude::{btree, TreeNode};
[INFO] [stdout]    |                        ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/leetcode/weekly/weekly_295_1.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 |             });;
[INFO] [stdout]    |                ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_295_2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `max`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_296_4.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cmp::{max, min};
[INFO] [stdout]   |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LinkedList`, `VecDeque`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_296_4.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::{LinkedList, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::min`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_297_2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cmp::min;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::leetcode::Solution`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_297_4.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::leetcode::Solution;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::BTreeSet`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_301_2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::BTreeSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::FromIterator`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_301_2.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::iter::FromIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_303_4.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::FromIterator`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_303_4.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::iter::FromIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeMap`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_303_3.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::{BTreeMap, BTreeSet, HashMap};
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::leetcode::Solution`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_303_3.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::leetcode::Solution;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_81_2.rs:29:27
[INFO] [stdout]    |
[INFO] [stdout] 29 |                 result += (sum - group[&parent]);
[INFO] [stdout]    |                           ^                    ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 29 -                 result += (sum - group[&parent]);
[INFO] [stdout] 29 +                 result += sum - group[&parent];
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Read`, `stdin`
[INFO] [stdout]  --> src/codeforces/scanner.rs:1:15
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::io::{Read, stdin};
[INFO] [stdout]   |               ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BorrowMut`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_715.rs:51:27
[INFO] [stdout]    |
[INFO] [stdout] 51 | use std::borrow::{Borrow, BorrowMut};
[INFO] [stdout]    |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Borrow`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_715.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 | use std::borrow::{Borrow, BorrowMut};
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_513.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | use std::borrow::Borrow;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_5.rs:26:31
[INFO] [stdout]    |
[INFO] [stdout] 26 |     pub fn longest_palindrome(s: String) -> String {
[INFO] [stdout]    |                               ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_13.rs:73:25
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn roman_to_int(s: String) -> i32 {
[INFO] [stdout]    |                         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_765.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |         let mut len: i32 = row.len() as i32;
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_765.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let mut fx = self.find(x) as usize;
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_765.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |         let mut fy = self.find(y) as usize;
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_354.rs:42:26
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn max_envelopes(mut envelopes: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]    |                          ----^^^^^^^^^
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `big`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn new(big: i32, medium: i32, small: i32) -> Self {
[INFO] [stdout]    |            ^^^ help: if this is intentional, prefix it with an underscore: `_big`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `medium`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:57:22
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn new(big: i32, medium: i32, small: i32) -> Self {
[INFO] [stdout]    |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_medium`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `small`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:57:35
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn new(big: i32, medium: i32, small: i32) -> Self {
[INFO] [stdout]    |                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_small`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `car_type`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:61:23
[INFO] [stdout]    |
[INFO] [stdout] 61 |     fn add_car(&self, car_type: i32) -> bool {
[INFO] [stdout]    |                       ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_car_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_224.rs:55:50
[INFO] [stdout]    |
[INFO] [stdout] 55 |             .fold(Vec::<Token>::new(), |mut acc, x| {
[INFO] [stdout]    |                                                  ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_224.rs:55:41
[INFO] [stdout]    |
[INFO] [stdout] 55 |             .fold(Vec::<Token>::new(), |mut acc, x| {
[INFO] [stdout]    |                                         ----^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_224.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let mut stack = s.as_bytes().iter()
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_706.rs:96:26
[INFO] [stdout]    |
[INFO] [stdout] 96 |             if let Some((k, v)) = bucket.iter_mut().find(|&&mut (k, v)| k == key) {
[INFO] [stdout]    |                          ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_706.rs:96:69
[INFO] [stdout]    |
[INFO] [stdout] 96 |             if let Some((k, v)) = bucket.iter_mut().find(|&&mut (k, v)| k == key) {
[INFO] [stdout]    |                                                                     ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_508.rs:65:61
[INFO] [stdout]    |
[INFO] [stdout] 65 |         if let Some((_, &count)) = sum.iter().max_by_key(|(&k, &v)| v) {
[INFO] [stdout]    |                                                             ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_508.rs:67:29
[INFO] [stdout]    |
[INFO] [stdout] 67 |                 .map(|(&k, &v)| k)
[INFO] [stdout]    |                             ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sum`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_294_4.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 |         let sum = strength.iter().enumerate()
[INFO] [stdout]   |             ^^^ help: if this is intentional, prefix it with an underscore: `_sum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `grid`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_295_4.rs:4:30
[INFO] [stdout]   |
[INFO] [stdout] 4 |     pub fn minimum_obstacles(grid: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]   |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_grid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |         for i in 0..k {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |         for i in 0..k {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         for i in 0..k {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_300_3.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |         let len = forget - delay;
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a1`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let mut a1 = amount[0];
[INFO] [stdout]    |                 ^^ help: if this is intentional, prefix it with an underscore: `_a1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a2`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 |         let mut a2 = amount[1];
[INFO] [stdout]    |                 ^^ help: if this is intentional, prefix it with an underscore: `_a2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a3`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut a3 = amount[2];
[INFO] [stdout]    |                 ^^ help: if this is intentional, prefix it with an underscore: `_a3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let mut a1 = amount[0];
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 |         let mut a2 = amount[1];
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut a3 = amount[2];
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_2.rs:36:57
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let index = self.nums.iter().enumerate().find(|(i, &x)| x).unwrap().0;
[INFO] [stdout]    |                                                         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_302_3.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let mut trimmed = nums.iter().enumerate().map(|(index, s)| (index, &s[start..]))
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_302_4.rs:17:47
[INFO] [stdout]    |
[INFO] [stdout] 17 |         match nums.iter().enumerate().find(|&(i, &x)| division % x == 0) {
[INFO] [stdout]    |                                               ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_303_4.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 |         let mut count = nums.iter().map(|&x| Solution::bit_count(x as u32))
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_305_1.rs:14:73
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let pos = nums.iter().enumerate().fold(vec![0; 201], |mut res, (idx, &num)| {
[INFO] [stdout]    |                                                                         ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_305_2.rs:12:28
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn reachable_nodes(n: i32, edges: Vec<Vec<i32>>, restricted: Vec<i32>) -> i32 {
[INFO] [stdout]    |                            ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nums`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_305_3.rs:12:28
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn valid_partition(nums: Vec<i32>) -> bool {
[INFO] [stdout]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_nums`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_306_3.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |         let mut pattern: Vec<_> = pattern.as_bytes().iter()
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_79_4.rs:18:21
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn merge(&self, a: &Self, b: &Self) -> Self {
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/leetcode/biweekly/biweekly_79_4.rs:110:27
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn scatter(&mut self, k: i32, max_row: i32) -> bool {
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_row`
[INFO] [stdout]    --> src/leetcode/biweekly/biweekly_79_4.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn scatter(&mut self, k: i32, max_row: i32) -> bool {
[INFO] [stdout]     |                                   ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_80_2.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let mut spells = spells;
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entry`
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_81_2.rs:32:21
[INFO] [stdout]    |
[INFO] [stdout] 32 |                 let entry = group.entry(parent).or_insert(1i64);
[INFO] [stdout]    |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_entry`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `last_bus` is assigned to, but never used
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_2.rs:24:17
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let mut last_bus = 0;
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_last_bus` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `last_count` is assigned to, but never used
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_2.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |         let mut last_count = 0;
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_last_count` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_bus` is never read
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_2.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |             last_bus = t;
[INFO] [stdout]    |             ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_count` is never read
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_2.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |             last_count = count;
[INFO] [stdout]    |             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_3.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |         let mut i = 0;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_83_1.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 |             let mut counter = ranks.iter().fold(vec![0; 13], |mut c, &x| {
[INFO] [stdout]    |                 ----^^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pattern`
[INFO] [stdout]   --> src/algorithm/kmp.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn index_of(&self, pattern: &String) -> Option<usize> {
[INFO] [stdout]    |                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pattern`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let mut tree: Vec<Option<T>> = vec![None; len * 4];
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NumMatrix` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_304.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | struct NumMatrix {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `sum_region` are never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_304.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | impl NumMatrix {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 44 |
[INFO] [stdout] 45 |     fn new(matrix: Vec<Vec<i32>>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     fn sum_region(&self, row1: i32, col1: i32, row2: i32, col2: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ParkingSystem` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:46:8
[INFO] [stdout]    |
[INFO] [stdout] 46 | struct ParkingSystem {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `add_car` are never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | impl ParkingSystem {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 56 |
[INFO] [stdout] 57 |     fn new(big: i32, medium: i32, small: i32) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     fn add_car(&self, car_type: i32) -> bool {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Number`, `Add`, `Minus`, `Quote`, `End`, and `Ignore` are never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_224.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         enum Token {
[INFO] [stdout]    |              ----- variants in this enum
[INFO] [stdout] 47 |             Number(i32),
[INFO] [stdout]    |             ^^^^^^
[INFO] [stdout] 48 |             Add,
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 49 |             Minus,
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout] 50 |             Quote,
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout] 51 |             End,
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 52 |             Ignore
[INFO] [stdout]    |             ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Token` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MyHashSet` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_705.rs:50:8
[INFO] [stdout]    |
[INFO] [stdout] 50 | struct MyHashSet {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add`, `remove`, `contains`, and `hash` are never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_705.rs:62:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | impl MyHashSet {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 62 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     fn add(&mut self, key: i32) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     fn remove(&mut self, key: i32) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     fn contains(&self, key: i32) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     fn hash(key: i32) -> usize {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Result` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_838.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | struct Result {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NumArray` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_307.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | struct NumArray {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `update`, and `sum_range` are never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_307.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | impl NumArray {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 62 |
[INFO] [stdout] 63 |     pub fn new(nums: Vec<i32>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 73 |     fn update(&mut self, index: i32, val: i32) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |     fn sum_range(&self, left: i32, right: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `book_count` and `max_book_count` are never read
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_732.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 64 | struct BookNode {
[INFO] [stdout]    |        -------- fields in this struct
[INFO] [stdout] 65 |     book_count: i32,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 66 |     max_book_count: i32
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MyCalendarThree` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_732.rs:78:8
[INFO] [stdout]    |
[INFO] [stdout] 78 | struct MyCalendarThree {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `book`, and `update` are never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_732.rs:88:8
[INFO] [stdout]    |
[INFO] [stdout] 86 | impl MyCalendarThree {
[INFO] [stdout]    | -------------------- associated items in this implementation
[INFO] [stdout] 87 |
[INFO] [stdout] 88 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 94 |     fn book(&mut self, start: i32, end: i32) -> i32 {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99 |     fn update(&mut self, start: i32, end: i32, l: i32, r: i32, index: i32) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Clamp` is never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_498.rs:37:7
[INFO] [stdout]    |
[INFO] [stdout] 37 | trait Clamp {
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `find_pairs_worse` is never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_532.rs:81:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | impl Solution {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 81 |     fn find_pairs_worse(nums: Vec<i32>, k: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RangeModule` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_715.rs:65:8
[INFO] [stdout]    |
[INFO] [stdout] 65 | struct RangeModule {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `split` is never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_715.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | impl RangeNode {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 80 |     fn split(&mut self) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_range`, `query_range`, `remove_range`, `query_range_node`, and `range_update` are never used
[INFO] [stdout]    --> src/leetcode/editor/cn/solution_715.rs:118:8
[INFO] [stdout]     |
[INFO] [stdout] 116 | impl RangeModule {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 117 |
[INFO] [stdout] 118 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     fn add_range(&mut self, left: i32, right: i32) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     fn query_range(&mut self, left: i32, right: i32) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     fn remove_range(&mut self, left: i32, right: i32) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     fn query_range_node(node: &Option<Rc<RefCell<RangeNode>>>, query_range: &Range<i32>) -> Option<bool> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     fn range_update(node: &Option<Rc<RefCell<RangeNode>>>, update_range: &Range<i32>, track: bool) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TextEditor` is never constructed
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct TextEditor {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_text`, `delete_text`, `cursor_left`, and `cursor_right` are never used
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl TextEditor {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 28 |
[INFO] [stdout] 29 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     fn add_text(&mut self, text: String) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     fn delete_text(&mut self, k: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     fn cursor_left(&mut self, k: i32) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     fn cursor_right(&mut self, k: i32) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SmallestInfiniteSet` is never constructed
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_2.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | struct SmallestInfiniteSet {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `pop_smallest`, and `add_back` are never used
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_2.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl SmallestInfiniteSet {
[INFO] [stdout]    | ------------------------ associated items in this implementation
[INFO] [stdout] 28 |
[INFO] [stdout] 29 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     fn pop_smallest(&mut self) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     fn add_back(&mut self, num: i32) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FoodRatings` is never constructed
[INFO] [stdout]   --> src/leetcode/weekly/weekly_303_3.rs:50:8
[INFO] [stdout]    |
[INFO] [stdout] 50 | struct FoodRatings {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `change_rating`, and `highest_rated` are never used
[INFO] [stdout]   --> src/leetcode/weekly/weekly_303_3.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | impl FoodRatings {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 56 |
[INFO] [stdout] 57 |     fn new(foods: Vec<String>, cuisines: Vec<String>, ratings: Vec<i32>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     fn change_rating(&mut self, food: String, new_rating: i32) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     fn highest_rated(&self, cuisine: String) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `node` is never read
[INFO] [stdout]   --> src/leetcode/weekly/weekly_304_3.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct Parent {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 14 |     node: i32,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Parent` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SINGLE` is never used
[INFO] [stdout]  --> src/leetcode/weekly/weekly_305_3.rs:7:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | const SINGLE: i32 = 0;
[INFO] [stdout]   |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EQUAL` is never used
[INFO] [stdout]  --> src/leetcode/weekly/weekly_305_3.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | const EQUAL: i32 = 1;
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ASC` is never used
[INFO] [stdout]  --> src/leetcode/weekly/weekly_305_3.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 | const ASC: i32 = 2;
[INFO] [stdout]   |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BookMyShow` is never constructed
[INFO] [stdout]  --> src/leetcode/biweekly/biweekly_79_4.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct BookMyShow {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `BookOperation` is never used
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_79_4.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 | trait BookOperation {
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `gather`, and `scatter` are never used
[INFO] [stdout]    --> src/leetcode/biweekly/biweekly_79_4.rs:91:8
[INFO] [stdout]     |
[INFO] [stdout] 89  | impl BookMyShow {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 90  |
[INFO] [stdout] 91  |     fn new(n: i32, m: i32) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 99  |     fn gather(&mut self, k: i32, max_row: i32) -> Vec<i32> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     fn scatter(&mut self, k: i32, max_row: i32) -> bool {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NumberContainers` is never constructed
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_83_3.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct NumberContainers {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `change`, and `find` are never used
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_83_3.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl NumberContainers {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 23 |
[INFO] [stdout] 24 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn change(&mut self, index: i32, number: i32) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     fn find(&self, number: i32) -> i32 {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `index_of` is never used
[INFO] [stdout]  --> src/algorithm/kmp.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait KmpSearch {
[INFO] [stdout]   |           --------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 4 |     fn index_of(&self, pattern: &Self::T) -> Option<usize>;
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gcd` is never used
[INFO] [stdout]  --> src/algorithm/mod.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn gcd(a: i32, b: i32) -> i32 {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `buffer` is never read
[INFO] [stdout]  --> src/codeforces/scanner.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct Scanner {
[INFO] [stdout]   |        ------- field in this struct
[INFO] [stdout] 5 |     buffer: Vec<String>,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `solution_offer_II_91` should have a snake case name
[INFO] [stdout]   --> src/leetcode/editor/cn/mod.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub mod solution_offer_II_91;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `solution_offer_ii_91`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 112 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BorrowMut`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_715.rs:51:27
[INFO] [stdout]    |
[INFO] [stdout] 51 | use std::borrow::{Borrow, BorrowMut};
[INFO] [stdout]    |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Borrow`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_715.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 | use std::borrow::{Borrow, BorrowMut};
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_513.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | use std::borrow::Borrow;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_5.rs:26:31
[INFO] [stdout]    |
[INFO] [stdout] 26 |     pub fn longest_palindrome(s: String) -> String {
[INFO] [stdout]    |                               ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_13.rs:73:25
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn roman_to_int(s: String) -> i32 {
[INFO] [stdout]    |                         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_765.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |         let mut len: i32 = row.len() as i32;
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_765.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let mut fx = self.find(x) as usize;
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_765.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |         let mut fy = self.find(y) as usize;
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_354.rs:42:26
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn max_envelopes(mut envelopes: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]    |                          ----^^^^^^^^^
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `big`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn new(big: i32, medium: i32, small: i32) -> Self {
[INFO] [stdout]    |            ^^^ help: if this is intentional, prefix it with an underscore: `_big`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `medium`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:57:22
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn new(big: i32, medium: i32, small: i32) -> Self {
[INFO] [stdout]    |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_medium`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `small`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:57:35
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn new(big: i32, medium: i32, small: i32) -> Self {
[INFO] [stdout]    |                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_small`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `car_type`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:61:23
[INFO] [stdout]    |
[INFO] [stdout] 61 |     fn add_car(&self, car_type: i32) -> bool {
[INFO] [stdout]    |                       ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_car_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_224.rs:55:50
[INFO] [stdout]    |
[INFO] [stdout] 55 |             .fold(Vec::<Token>::new(), |mut acc, x| {
[INFO] [stdout]    |                                                  ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_224.rs:55:41
[INFO] [stdout]    |
[INFO] [stdout] 55 |             .fold(Vec::<Token>::new(), |mut acc, x| {
[INFO] [stdout]    |                                         ----^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_224.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let mut stack = s.as_bytes().iter()
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_706.rs:96:26
[INFO] [stdout]    |
[INFO] [stdout] 96 |             if let Some((k, v)) = bucket.iter_mut().find(|&&mut (k, v)| k == key) {
[INFO] [stdout]    |                          ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_706.rs:96:69
[INFO] [stdout]    |
[INFO] [stdout] 96 |             if let Some((k, v)) = bucket.iter_mut().find(|&&mut (k, v)| k == key) {
[INFO] [stdout]    |                                                                     ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_508.rs:65:61
[INFO] [stdout]    |
[INFO] [stdout] 65 |         if let Some((_, &count)) = sum.iter().max_by_key(|(&k, &v)| v) {
[INFO] [stdout]    |                                                             ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_508.rs:67:29
[INFO] [stdout]    |
[INFO] [stdout] 67 |                 .map(|(&k, &v)| k)
[INFO] [stdout]    |                             ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sum`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_294_4.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 |         let sum = strength.iter().enumerate()
[INFO] [stdout]   |             ^^^ help: if this is intentional, prefix it with an underscore: `_sum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `grid`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_295_4.rs:4:30
[INFO] [stdout]   |
[INFO] [stdout] 4 |     pub fn minimum_obstacles(grid: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]   |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_grid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |         for i in 0..k {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |         for i in 0..k {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         for i in 0..k {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_300_3.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |         let len = forget - delay;
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a1`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let mut a1 = amount[0];
[INFO] [stdout]    |                 ^^ help: if this is intentional, prefix it with an underscore: `_a1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a2`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 |         let mut a2 = amount[1];
[INFO] [stdout]    |                 ^^ help: if this is intentional, prefix it with an underscore: `_a2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a3`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut a3 = amount[2];
[INFO] [stdout]    |                 ^^ help: if this is intentional, prefix it with an underscore: `_a3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let mut a1 = amount[0];
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 |         let mut a2 = amount[1];
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut a3 = amount[2];
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_2.rs:36:57
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let index = self.nums.iter().enumerate().find(|(i, &x)| x).unwrap().0;
[INFO] [stdout]    |                                                         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_302_3.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let mut trimmed = nums.iter().enumerate().map(|(index, s)| (index, &s[start..]))
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_302_4.rs:17:47
[INFO] [stdout]    |
[INFO] [stdout] 17 |         match nums.iter().enumerate().find(|&(i, &x)| division % x == 0) {
[INFO] [stdout]    |                                               ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_303_4.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 |         let mut count = nums.iter().map(|&x| Solution::bit_count(x as u32))
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_305_1.rs:14:73
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let pos = nums.iter().enumerate().fold(vec![0; 201], |mut res, (idx, &num)| {
[INFO] [stdout]    |                                                                         ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_305_2.rs:12:28
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn reachable_nodes(n: i32, edges: Vec<Vec<i32>>, restricted: Vec<i32>) -> i32 {
[INFO] [stdout]    |                            ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nums`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_305_3.rs:12:28
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn valid_partition(nums: Vec<i32>) -> bool {
[INFO] [stdout]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_nums`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_306_3.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |         let mut pattern: Vec<_> = pattern.as_bytes().iter()
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_79_4.rs:18:21
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn merge(&self, a: &Self, b: &Self) -> Self {
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/leetcode/biweekly/biweekly_79_4.rs:110:27
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn scatter(&mut self, k: i32, max_row: i32) -> bool {
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_row`
[INFO] [stdout]    --> src/leetcode/biweekly/biweekly_79_4.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn scatter(&mut self, k: i32, max_row: i32) -> bool {
[INFO] [stdout]     |                                   ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_80_2.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let mut spells = spells;
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entry`
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_81_2.rs:32:21
[INFO] [stdout]    |
[INFO] [stdout] 32 |                 let entry = group.entry(parent).or_insert(1i64);
[INFO] [stdout]    |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_entry`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `last_bus` is assigned to, but never used
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_2.rs:24:17
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let mut last_bus = 0;
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_last_bus` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `last_count` is assigned to, but never used
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_2.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |         let mut last_count = 0;
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_last_count` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_bus` is never read
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_2.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |             last_bus = t;
[INFO] [stdout]    |             ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_count` is never read
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_2.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |             last_count = count;
[INFO] [stdout]    |             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_3.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |         let mut i = 0;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_83_1.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 |             let mut counter = ranks.iter().fold(vec![0; 13], |mut c, &x| {
[INFO] [stdout]    |                 ----^^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pattern`
[INFO] [stdout]   --> src/algorithm/kmp.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn index_of(&self, pattern: &String) -> Option<usize> {
[INFO] [stdout]    |                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pattern`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let mut tree: Vec<Option<T>> = vec![None; len * 4];
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NumMatrix` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_304.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | struct NumMatrix {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `sum_region` are never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_304.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | impl NumMatrix {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 44 |
[INFO] [stdout] 45 |     fn new(matrix: Vec<Vec<i32>>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     fn sum_region(&self, row1: i32, col1: i32, row2: i32, col2: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ParkingSystem` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:46:8
[INFO] [stdout]    |
[INFO] [stdout] 46 | struct ParkingSystem {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `add_car` are never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | impl ParkingSystem {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 56 |
[INFO] [stdout] 57 |     fn new(big: i32, medium: i32, small: i32) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     fn add_car(&self, car_type: i32) -> bool {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Number`, `Add`, `Minus`, `Quote`, `End`, and `Ignore` are never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_224.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         enum Token {
[INFO] [stdout]    |              ----- variants in this enum
[INFO] [stdout] 47 |             Number(i32),
[INFO] [stdout]    |             ^^^^^^
[INFO] [stdout] 48 |             Add,
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 49 |             Minus,
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout] 50 |             Quote,
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout] 51 |             End,
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 52 |             Ignore
[INFO] [stdout]    |             ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Token` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MyHashSet` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_705.rs:50:8
[INFO] [stdout]    |
[INFO] [stdout] 50 | struct MyHashSet {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add`, `remove`, `contains`, and `hash` are never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_705.rs:62:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | impl MyHashSet {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 62 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     fn add(&mut self, key: i32) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     fn remove(&mut self, key: i32) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     fn contains(&self, key: i32) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     fn hash(key: i32) -> usize {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Result` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_838.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | struct Result {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NumArray` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_307.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | struct NumArray {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `update`, and `sum_range` are never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_307.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | impl NumArray {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 62 |
[INFO] [stdout] 63 |     pub fn new(nums: Vec<i32>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 73 |     fn update(&mut self, index: i32, val: i32) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |     fn sum_range(&self, left: i32, right: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Clamp` is never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_498.rs:37:7
[INFO] [stdout]    |
[INFO] [stdout] 37 | trait Clamp {
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `find_pairs_worse` is never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_532.rs:81:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | impl Solution {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 81 |     fn find_pairs_worse(nums: Vec<i32>, k: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `node` is never read
[INFO] [stdout]   --> src/leetcode/weekly/weekly_304_3.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct Parent {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 14 |     node: i32,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Parent` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SINGLE` is never used
[INFO] [stdout]  --> src/leetcode/weekly/weekly_305_3.rs:7:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | const SINGLE: i32 = 0;
[INFO] [stdout]   |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EQUAL` is never used
[INFO] [stdout]  --> src/leetcode/weekly/weekly_305_3.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | const EQUAL: i32 = 1;
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ASC` is never used
[INFO] [stdout]  --> src/leetcode/weekly/weekly_305_3.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 | const ASC: i32 = 2;
[INFO] [stdout]   |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BookMyShow` is never constructed
[INFO] [stdout]  --> src/leetcode/biweekly/biweekly_79_4.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct BookMyShow {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `BookOperation` is never used
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_79_4.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 | trait BookOperation {
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `gather`, and `scatter` are never used
[INFO] [stdout]    --> src/leetcode/biweekly/biweekly_79_4.rs:91:8
[INFO] [stdout]     |
[INFO] [stdout] 89  | impl BookMyShow {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 90  |
[INFO] [stdout] 91  |     fn new(n: i32, m: i32) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 99  |     fn gather(&mut self, k: i32, max_row: i32) -> Vec<i32> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     fn scatter(&mut self, k: i32, max_row: i32) -> bool {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `index_of` is never used
[INFO] [stdout]  --> src/algorithm/kmp.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait KmpSearch {
[INFO] [stdout]   |           --------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 4 |     fn index_of(&self, pattern: &Self::T) -> Option<usize>;
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gcd` is never used
[INFO] [stdout]  --> src/algorithm/mod.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn gcd(a: i32, b: i32) -> i32 {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `buffer` is never read
[INFO] [stdout]  --> src/codeforces/scanner.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct Scanner {
[INFO] [stdout]   |        ------- field in this struct
[INFO] [stdout] 5 |     buffer: Vec<String>,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `solution_offer_II_91` should have a snake case name
[INFO] [stdout]   --> src/leetcode/editor/cn/mod.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub mod solution_offer_II_91;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `solution_offer_ii_91`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 92 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.05s
[INFO] running `Command { std: "docker" "inspect" "5378e6813d15416959d12614954df1bced3b9bbb5bcdd7274f0c77a9b6b2c385", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5378e6813d15416959d12614954df1bced3b9bbb5bcdd7274f0c77a9b6b2c385", kill_on_drop: false }`
[INFO] [stdout] 5378e6813d15416959d12614954df1bced3b9bbb5bcdd7274f0c77a9b6b2c385
[INFO] checking xanahopper/leetcode against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxanahopper%2Fleetcode" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/xanahopper/leetcode on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/xanahopper/leetcode
[INFO] finished tweaking git repo https://github.com/xanahopper/leetcode
[INFO] tweaked toml for git repo https://github.com/xanahopper/leetcode written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/xanahopper/leetcode already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c8f0be977700af99785c1911b58bf340a0ba103bc37d13565e232e689fcef5e2
[INFO] running `Command { std: "docker" "start" "-a" "c8f0be977700af99785c1911b58bf340a0ba103bc37d13565e232e689fcef5e2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c8f0be977700af99785c1911b58bf340a0ba103bc37d13565e232e689fcef5e2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c8f0be977700af99785c1911b58bf340a0ba103bc37d13565e232e689fcef5e2", kill_on_drop: false }`
[INFO] [stdout] c8f0be977700af99785c1911b58bf340a0ba103bc37d13565e232e689fcef5e2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 65749155186efd87dd056252d565498aa8ab2b8ea21f72725b38ff2745b68f0c
[INFO] running `Command { std: "docker" "start" "-a" "65749155186efd87dd056252d565498aa8ab2b8ea21f72725b38ff2745b68f0c", kill_on_drop: false }`
[INFO] [stderr]    Compiling ryu v1.0.2
[INFO] [stderr]    Compiling serde v1.0.104
[INFO] [stderr]    Compiling itoa v0.4.4
[INFO] [stderr]    Compiling serde_json v1.0.44
[INFO] [stderr]    Compiling leetcode_test v0.1.1
[INFO] [stderr]     Checking leetcode_prelude v0.2.2
[INFO] [stderr]     Checking leetcode v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_3.rs:50:22
[INFO] [stdout]    |
[INFO] [stdout] 50 |             match &s[start_index..end_index].find(c) {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_6.rs:54:22
[INFO] [stdout]    |
[INFO] [stdout] 54 |         for index in 0..num {
[INFO] [stdout]    |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_9.rs:45:23
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let digits = (0..digit_count).map(|exp| x / 10_i32.pow(exp) % 10);
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_395.rs:42:26
[INFO] [stdout]    |
[INFO] [stdout] 42 |             let freq = s[lo..=hi].iter().fold(vec![0; 26], |mut acc, c| {
[INFO] [stdout]    |                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_395.rs:48:22
[INFO] [stdout]    |
[INFO] [stdout] 48 |             for j in lo..=hi {
[INFO] [stdout]    |                      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_887.rs:63:18
[INFO] [stdout]    |
[INFO] [stdout] 63 |         for m in 1..=(n as usize) {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_887.rs:65:23
[INFO] [stdout]    |
[INFO] [stdout] 65 |             for ki in 1..=(k as usize) {
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_867.rs:46:10
[INFO] [stdout]    |
[INFO] [stdout] 46 |         (0..n).map(|i| (0..m).map(|j| matrix[j][i]).collect()).collect()
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_867.rs:46:25
[INFO] [stdout]    |
[INFO] [stdout] 46 |         (0..n).map(|i| (0..m).map(|j| matrix[j][i]).collect()).collect()
[INFO] [stdout]    |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_765.rs:42:33
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let parent: Vec<i32> = (0..pair).map(|idx| idx).collect();
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_765.rs:44:19
[INFO] [stdout]    |
[INFO] [stdout] 44 |         for i in (0..len).filter(|x| x % 2 == 0) {
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_503.rs:28:22
[INFO] [stdout]    |
[INFO] [stdout] 28 |             for i in 0..len * 2 - 1 {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_303.rs:67:19
[INFO] [stdout]    |
[INFO] [stdout] 67 |         self.data[i as usize..=j as usize].iter().sum()
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_338.rs:30:10
[INFO] [stdout]    |
[INFO] [stdout] 30 |         (1..=num as usize)
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_132.rs:56:19
[INFO] [stdout]    |
[INFO] [stdout] 56 |         for i in (0..size).rev() {
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_132.rs:57:22
[INFO] [stdout]    |
[INFO] [stdout] 57 |             for j in i+1..size {
[INFO] [stdout]    |                      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_132.rs:64:18
[INFO] [stdout]    |
[INFO] [stdout] 64 |         for i in 0..size {
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_132.rs:66:22
[INFO] [stdout]    |
[INFO] [stdout] 66 |             for j in 0..=i {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_59.rs:44:10
[INFO] [stdout]    |
[INFO] [stdout] 44 |         (1..=n * n).for_each(|i| {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_73.rs:63:18
[INFO] [stdout]    |
[INFO] [stdout] 63 |                   (0..matrix[0]
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 64 | |                     .len())
[INFO] [stdout]    | |__________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_73.rs:71:18
[INFO] [stdout]    |
[INFO] [stdout] 71 |                   (0..matrix
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 72 | |                     .len())
[INFO] [stdout]    | |__________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_838.rs:63:18
[INFO] [stdout]    |
[INFO] [stdout] 63 |         for i in 0..dom.len() {
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_838.rs:77:34
[INFO] [stdout]    |
[INFO] [stdout] 77 |                         for j in start..i {
[INFO] [stdout]    |                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_838.rs:85:34
[INFO] [stdout]    |
[INFO] [stdout] 85 |                         for j in lst_r..i {
[INFO] [stdout]    |                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_838.rs:95:28
[INFO] [stdout]    |
[INFO] [stdout] 95 |         if has_r {for i in lst_r..dom.len() {dom[i] = b'R'}}
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1994.rs:91:18
[INFO] [stdout]    |
[INFO] [stdout] 91 |                 (sta..1024)
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/leetcode/editor/cn/solution_1994.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout] 100 |         dp[1..].iter().fold(0, |res, v| (res + v) % MOD) as i32
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_307.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |         buf[n..2*n].copy_from_slice(&nums);
[INFO] [stdout]    |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_307.rs:67:19
[INFO] [stdout]    |
[INFO] [stdout] 67 |         for i in (1..n).rev() {
[INFO] [stdout]    |                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1051.rs:63:34
[INFO] [stdout]    |
[INFO] [stdout] 63 |             let expect = heights[acc_index..acc_index + count].iter().filter(|&&x| x != height).count() as i32;
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_498.rs:60:23
[INFO] [stdout]    |
[INFO] [stdout] 60 |         let i_range = 0..m;
[INFO] [stdout]    |                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_498.rs:61:23
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let j_range = 0..n;
[INFO] [stdout]    |                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_498.rs:64:21
[INFO] [stdout]    |
[INFO] [stdout] 64 |         for line in 0..(m + n - 1) {
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_498.rs:66:27
[INFO] [stdout]    |
[INFO] [stdout] 66 |                 for i in (0..=line).rev() {
[INFO] [stdout]    |                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_498.rs:74:27
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 for j in (0..=line).rev() {
[INFO] [stdout]    |                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_719.rs:66:26
[INFO] [stdout]    |
[INFO] [stdout] 66 |                 count += (j - i - 1);
[INFO] [stdout]    |                          ^         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 66 -                 count += (j - i - 1);
[INFO] [stdout] 66 +                 count += j - i - 1;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_532.rs:69:35
[INFO] [stdout]    |
[INFO] [stdout] 69 |             let next_part = &nums[i + 1..len];
[INFO] [stdout]    |                                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1089.rs:41:10
[INFO] [stdout]    |
[INFO] [stdout] 41 |         (0..n).rev().fold(count, |c, i| {
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `btree`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_508.rs:36:24
[INFO] [stdout]    |
[INFO] [stdout] 36 | use leetcode_prelude::{btree, TreeNode};
[INFO] [stdout]    |                        ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_508.rs:59:33
[INFO] [stdout]    |
[INFO] [stdout] 59 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::FromIterator`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_508.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 90 | use std::iter::FromIterator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_715.rs:84:24
[INFO] [stdout]    |
[INFO] [stdout] 84 |                 range: self.range.start..mid,
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_715.rs:95:24
[INFO] [stdout]    |
[INFO] [stdout] 95 |                 range: mid + 1..self.range.end,
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/leetcode/editor/cn/solution_715.rs:121:24
[INFO] [stdout]     |
[INFO] [stdout] 121 |                 range: 1..1_000_000_000,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/leetcode/editor/cn/solution_715.rs:131:53
[INFO] [stdout]     |
[INFO] [stdout] 131 |         RangeModule::range_update(&mut self.root, &(left..right - 1), true);
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/leetcode/editor/cn/solution_715.rs:135:53
[INFO] [stdout]     |
[INFO] [stdout] 135 |         RangeModule::query_range_node(&self.root, &(left..right - 1)).unwrap()
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/leetcode/editor/cn/solution_715.rs:139:53
[INFO] [stdout]     |
[INFO] [stdout] 139 |         RangeModule::range_update(&mut self.root, &(left..right - 1), false);
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `btree`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_513.rs:36:24
[INFO] [stdout]    |
[INFO] [stdout] 36 | use leetcode_prelude::{btree, TreeNode};
[INFO] [stdout]    |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `btree`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_515.rs:33:24
[INFO] [stdout]    |
[INFO] [stdout] 33 | use leetcode_prelude::{btree, TreeNode};
[INFO] [stdout]    |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_offer_II_91.rs:51:18
[INFO] [stdout]    |
[INFO] [stdout] 51 |         for i in 1..n {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_293_3.rs:13:10
[INFO] [stdout]    |
[INFO] [stdout] 13 |         (0..=30).map(|i| {
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/leetcode/weekly/weekly_295_1.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 |             });;
[INFO] [stdout]    |                ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_295_2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_295_2.rs:25:47
[INFO] [stdout]    |
[INFO] [stdout] 25 |         if s.starts_with("$") && s.as_bytes()[1..s.len()].iter().all(|&x| x >= '0' as u8 && x <= '9' as u8) && s.len() > 1 {
[INFO] [stdout]    |                                               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_295_2.rs:26:31
[INFO] [stdout]    |
[INFO] [stdout] 26 |             Some(s.as_bytes()[1..s.len()]
[INFO] [stdout]    |                               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_1.rs:17:22
[INFO] [stdout]    |
[INFO] [stdout] 17 |             for i in 0..(len / 2) {
[INFO] [stdout]    |                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `max`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_296_4.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cmp::{max, min};
[INFO] [stdout]   |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LinkedList`, `VecDeque`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_296_4.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::{LinkedList, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:42:18
[INFO] [stdout]    |
[INFO] [stdout] 42 |         for i in 0..k {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:50:18
[INFO] [stdout]    |
[INFO] [stdout] 50 |         for i in 0..k {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:54:46
[INFO] [stdout]    |
[INFO] [stdout] 54 |         String::from_utf8_lossy(&self.before[len - min(10usize, len)..len]).to_string()
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:59:18
[INFO] [stdout]    |
[INFO] [stdout] 59 |         for i in 0..k {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:63:46
[INFO] [stdout]    |
[INFO] [stdout] 63 |         String::from_utf8_lossy(&self.before[len - min(10usize, len)..len]).to_string()
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::min`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_297_2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cmp::min;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_297_2.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 |                 for j in 0..n {
[INFO] [stdout]    |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_297_2.rs:18:30
[INFO] [stdout]    |
[INFO] [stdout] 18 |                     for j in 0..n {
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_297_3.rs:28:18
[INFO] [stdout]    |
[INFO] [stdout] 28 |         for i in 0..k {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::leetcode::Solution`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_297_4.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::leetcode::Solution;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_298_1.rs:23:18
[INFO] [stdout]    |
[INFO] [stdout] 23 |         for c in 'A'..='Z' {
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_298_2.rs:20:18
[INFO] [stdout]    |
[INFO] [stdout] 20 |         for i in 1..=10 {
[INFO] [stdout]    |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_298_3.rs:25:19
[INFO] [stdout]    |
[INFO] [stdout] 25 |         for i in (0..n-1).rev() {
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_298_3.rs:32:26
[INFO] [stdout]    |
[INFO] [stdout] 32 |                 for j in i + 1..n {
[INFO] [stdout]    |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_299_1.rs:11:18
[INFO] [stdout]    |
[INFO] [stdout] 11 |         for i in 0..n {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_299_1.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 |             for j in 0..n {
[INFO] [stdout]    |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_299_2.rs:18:18
[INFO] [stdout]    |
[INFO] [stdout] 18 |         for i in 1..n as usize {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_299_3.rs:18:18
[INFO] [stdout]    |
[INFO] [stdout] 18 |         for i in 1..=n {
[INFO] [stdout]    |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `linkedlist`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_300_2.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use leetcode_prelude::{linkedlist, ListNode};
[INFO] [stdout]   |                        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_300_3.rs:15:18
[INFO] [stdout]    |
[INFO] [stdout] 15 |         for i in 1..n as usize {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_300_3.rs:19:42
[INFO] [stdout]    |
[INFO] [stdout] 19 |             let aware_count: i32 = count[aware_index.max(0)..(i - 1)].iter().sum();
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::BTreeSet`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_301_2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::BTreeSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::FromIterator`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_301_2.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::iter::FromIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_4.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 |         for i in 1..=max_value {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_4.rs:15:18
[INFO] [stdout]    |
[INFO] [stdout] 15 |         for i in 2..=n as usize {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_4.rs:16:22
[INFO] [stdout]    |
[INFO] [stdout] 16 |             for j in 1..=max_value as usize {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_4.rs:17:26
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 for k in 1..=j {
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_302_3.rs:35:79
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let mut trimmed = nums.iter().enumerate().map(|(index, s)| (index, &s[start..]))
[INFO] [stdout]    |                                                                               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_302_4.rs:14:36
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let division = nums_divide[1..].iter().fold(nums_divide[0], |target, &x| Solution::gcd(target, x));
[INFO] [stdout]    |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_303_4.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::FromIterator`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_303_4.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::iter::FromIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_303_4.rs:21:18
[INFO] [stdout]    |
[INFO] [stdout] 21 |         for i in 1..=64usize {
[INFO] [stdout]    |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_303_4.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 |             for j in 1..=64usize {
[INFO] [stdout]    |                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeMap`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_303_3.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::{BTreeMap, BTreeSet, HashMap};
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::leetcode::Solution`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_303_3.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::leetcode::Solution;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_303_2.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 |         for i in 0..n {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_303_2.rs:13:22
[INFO] [stdout]    |
[INFO] [stdout] 13 |             for j in 0..n {
[INFO] [stdout]    |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_303_2.rs:15:26
[INFO] [stdout]    |
[INFO] [stdout] 15 |                 for k in 0..n {
[INFO] [stdout]    |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_304_2.rs:18:31
[INFO] [stdout]    |
[INFO] [stdout] 18 |         for &grade in &grades[1..n] {
[INFO] [stdout]    |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_305_1.rs:20:20
[INFO] [stdout]    |
[INFO] [stdout] 20 |         for num in 0..201usize - 2 * d {
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_306_1.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 |         for i in 0..n - 2 {
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_306_1.rs:13:22
[INFO] [stdout]    |
[INFO] [stdout] 13 |             for j in 0..n - 2 {
[INFO] [stdout]    |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_306_4.rs:33:28
[INFO] [stdout]    |
[INFO] [stdout] 33 |                 let res = (start..=up).fold(0, |sum, d| {
[INFO] [stdout]    |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_79_4.rs:52:47
[INFO] [stdout]    |
[INFO] [stdout] 52 |                 return self.index(left_index, range.start..mid, right, val);
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_79_4.rs:56:44
[INFO] [stdout]    |
[INFO] [stdout] 56 |             return self.index(right_index, mid + 1..range.end, right_index, val)
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_79_4.rs:77:34
[INFO] [stdout]    |
[INFO] [stdout] 77 |             self.add(left_index, range.start..mid, index, val);
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_79_4.rs:79:35
[INFO] [stdout]    |
[INFO] [stdout] 79 |             self.add(right_index, mid + 1..range.end, index, val);
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_79_4.rs:93:54
[INFO] [stdout]    |
[INFO] [stdout] 93 |             book_tree: SegmentTree::<BookInfo>::new((0..n).map(|_| BookInfo::default()).collect()),
[INFO] [stdout]    |                                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/leetcode/biweekly/biweekly_79_4.rs:100:41
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let i = self.book_tree.index(0, 0..self.book_tree.len - 1, (max_row + 1) as usize, self.m - k);
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/leetcode/biweekly/biweekly_79_4.rs:104:50
[INFO] [stdout]     |
[INFO] [stdout] 104 |             let seats = self.book_tree.query_sum(i as usize..i as usize);
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/leetcode/biweekly/biweekly_79_4.rs:105:35
[INFO] [stdout]     |
[INFO] [stdout] 105 |             self.book_tree.add(0, 0..self.book_tree.len - 1, i as usize, k);
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_81_2.rs:13:22
[INFO] [stdout]    |
[INFO] [stdout] 13 |         let mut v = (0..n as usize).collect();
[INFO] [stdout]    |                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_81_2.rs:26:18
[INFO] [stdout]    |
[INFO] [stdout] 26 |         for i in 0..n as usize {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_81_2.rs:29:27
[INFO] [stdout]    |
[INFO] [stdout] 29 |                 result += (sum - group[&parent]);
[INFO] [stdout]    |                           ^                    ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 29 -                 result += (sum - group[&parent]);
[INFO] [stdout] 29 +                 result += sum - group[&parent];
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `btree`
[INFO] [stdout]  --> src/leetcode/biweekly/biweekly_82_1.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use leetcode_prelude::{btree, TreeNode};
[INFO] [stdout]   |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:39:32
[INFO] [stdout]    |
[INFO] [stdout] 39 |         self.build(left_index, range.start..mid);
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:40:33
[INFO] [stdout]    |
[INFO] [stdout] 40 |         self.build(right_index, mid + 1..range.end);
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:68:20
[INFO] [stdout]    |
[INFO] [stdout] 68 |         t.build(0, 0..len - 1);
[INFO] [stdout]    |                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:73:33
[INFO] [stdout]    |
[INFO] [stdout] 73 |         self.recursion_query(0, 0..self.len() - 1, range)
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:84:54
[INFO] [stdout]    |
[INFO] [stdout] 84 |             return self.recursion_query(right_index, mid + 1..range.end, query_range);
[INFO] [stdout]    |                                                      ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:86:53
[INFO] [stdout]    |
[INFO] [stdout] 86 |             return self.recursion_query(left_index, range.start..mid, query_range);
[INFO] [stdout]    |                                                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:88:57
[INFO] [stdout]    |
[INFO] [stdout] 88 |         let left_res = self.recursion_query(left_index, range.start..mid, query_range.start..mid);
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:88:75
[INFO] [stdout]    |
[INFO] [stdout] 88 |         let left_res = self.recursion_query(left_index, range.start..mid, query_range.start..mid);
[INFO] [stdout]    |                                                                           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:89:59
[INFO] [stdout]    |
[INFO] [stdout] 89 |         let right_res = self.recursion_query(right_index, mid + 1..range.end, mid + 1..query_range.end);
[INFO] [stdout]    |                                                           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:89:79
[INFO] [stdout]    |
[INFO] [stdout] 89 |         let right_res = self.recursion_query(right_index, mid + 1..range.end, mid + 1..query_range.end);
[INFO] [stdout]    |                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:99:31
[INFO] [stdout]    |
[INFO] [stdout] 99 |         self.recursion_set(0, 0..self.len() - 1, index, e);
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/algorithm/segment_tree.rs:111:45
[INFO] [stdout]     |
[INFO] [stdout] 111 |             self.recursion_set(right_index, mid + 1..range.end, index, e)
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/algorithm/segment_tree.rs:113:44
[INFO] [stdout]     |
[INFO] [stdout] 113 |             self.recursion_set(left_index, range.start..mid, index, e)
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Read`, `stdin`
[INFO] [stdout]  --> src/codeforces/scanner.rs:1:15
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::io::{Read, stdin};
[INFO] [stdout]   |               ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_3.rs:50:22
[INFO] [stdout]    |
[INFO] [stdout] 50 |             match &s[start_index..end_index].find(c) {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_6.rs:54:22
[INFO] [stdout]    |
[INFO] [stdout] 54 |         for index in 0..num {
[INFO] [stdout]    |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_9.rs:45:23
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let digits = (0..digit_count).map(|exp| x / 10_i32.pow(exp) % 10);
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_395.rs:42:26
[INFO] [stdout]    |
[INFO] [stdout] 42 |             let freq = s[lo..=hi].iter().fold(vec![0; 26], |mut acc, c| {
[INFO] [stdout]    |                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_395.rs:48:22
[INFO] [stdout]    |
[INFO] [stdout] 48 |             for j in lo..=hi {
[INFO] [stdout]    |                      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_887.rs:63:18
[INFO] [stdout]    |
[INFO] [stdout] 63 |         for m in 1..=(n as usize) {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_887.rs:65:23
[INFO] [stdout]    |
[INFO] [stdout] 65 |             for ki in 1..=(k as usize) {
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_867.rs:46:10
[INFO] [stdout]    |
[INFO] [stdout] 46 |         (0..n).map(|i| (0..m).map(|j| matrix[j][i]).collect()).collect()
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_867.rs:46:25
[INFO] [stdout]    |
[INFO] [stdout] 46 |         (0..n).map(|i| (0..m).map(|j| matrix[j][i]).collect()).collect()
[INFO] [stdout]    |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_765.rs:42:33
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let parent: Vec<i32> = (0..pair).map(|idx| idx).collect();
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_765.rs:44:19
[INFO] [stdout]    |
[INFO] [stdout] 44 |         for i in (0..len).filter(|x| x % 2 == 0) {
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_503.rs:28:22
[INFO] [stdout]    |
[INFO] [stdout] 28 |             for i in 0..len * 2 - 1 {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_303.rs:67:19
[INFO] [stdout]    |
[INFO] [stdout] 67 |         self.data[i as usize..=j as usize].iter().sum()
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_338.rs:30:10
[INFO] [stdout]    |
[INFO] [stdout] 30 |         (1..=num as usize)
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_132.rs:56:19
[INFO] [stdout]    |
[INFO] [stdout] 56 |         for i in (0..size).rev() {
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_132.rs:57:22
[INFO] [stdout]    |
[INFO] [stdout] 57 |             for j in i+1..size {
[INFO] [stdout]    |                      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_132.rs:64:18
[INFO] [stdout]    |
[INFO] [stdout] 64 |         for i in 0..size {
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_132.rs:66:22
[INFO] [stdout]    |
[INFO] [stdout] 66 |             for j in 0..=i {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_59.rs:44:10
[INFO] [stdout]    |
[INFO] [stdout] 44 |         (1..=n * n).for_each(|i| {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_73.rs:63:18
[INFO] [stdout]    |
[INFO] [stdout] 63 |                   (0..matrix[0]
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 64 | |                     .len())
[INFO] [stdout]    | |__________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_73.rs:71:18
[INFO] [stdout]    |
[INFO] [stdout] 71 |                   (0..matrix
[INFO] [stdout]    |  __________________^
[INFO] [stdout] 72 | |                     .len())
[INFO] [stdout]    | |__________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_838.rs:63:18
[INFO] [stdout]    |
[INFO] [stdout] 63 |         for i in 0..dom.len() {
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_838.rs:77:34
[INFO] [stdout]    |
[INFO] [stdout] 77 |                         for j in start..i {
[INFO] [stdout]    |                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_838.rs:85:34
[INFO] [stdout]    |
[INFO] [stdout] 85 |                         for j in lst_r..i {
[INFO] [stdout]    |                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_838.rs:95:28
[INFO] [stdout]    |
[INFO] [stdout] 95 |         if has_r {for i in lst_r..dom.len() {dom[i] = b'R'}}
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1994.rs:91:18
[INFO] [stdout]    |
[INFO] [stdout] 91 |                 (sta..1024)
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/leetcode/editor/cn/solution_1994.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout] 100 |         dp[1..].iter().fold(0, |res, v| (res + v) % MOD) as i32
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_307.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |         buf[n..2*n].copy_from_slice(&nums);
[INFO] [stdout]    |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_307.rs:67:19
[INFO] [stdout]    |
[INFO] [stdout] 67 |         for i in (1..n).rev() {
[INFO] [stdout]    |                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1051.rs:63:34
[INFO] [stdout]    |
[INFO] [stdout] 63 |             let expect = heights[acc_index..acc_index + count].iter().filter(|&&x| x != height).count() as i32;
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_498.rs:60:23
[INFO] [stdout]    |
[INFO] [stdout] 60 |         let i_range = 0..m;
[INFO] [stdout]    |                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_498.rs:61:23
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let j_range = 0..n;
[INFO] [stdout]    |                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_498.rs:64:21
[INFO] [stdout]    |
[INFO] [stdout] 64 |         for line in 0..(m + n - 1) {
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_498.rs:66:27
[INFO] [stdout]    |
[INFO] [stdout] 66 |                 for i in (0..=line).rev() {
[INFO] [stdout]    |                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_498.rs:74:27
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 for j in (0..=line).rev() {
[INFO] [stdout]    |                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_719.rs:66:26
[INFO] [stdout]    |
[INFO] [stdout] 66 |                 count += (j - i - 1);
[INFO] [stdout]    |                          ^         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 66 -                 count += (j - i - 1);
[INFO] [stdout] 66 +                 count += j - i - 1;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_532.rs:69:35
[INFO] [stdout]    |
[INFO] [stdout] 69 |             let next_part = &nums[i + 1..len];
[INFO] [stdout]    |                                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1089.rs:41:10
[INFO] [stdout]    |
[INFO] [stdout] 41 |         (0..n).rev().fold(count, |c, i| {
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_715.rs:84:24
[INFO] [stdout]    |
[INFO] [stdout] 84 |                 range: self.range.start..mid,
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_715.rs:95:24
[INFO] [stdout]    |
[INFO] [stdout] 95 |                 range: mid + 1..self.range.end,
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/leetcode/editor/cn/solution_715.rs:121:24
[INFO] [stdout]     |
[INFO] [stdout] 121 |                 range: 1..1_000_000_000,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/leetcode/editor/cn/solution_715.rs:131:53
[INFO] [stdout]     |
[INFO] [stdout] 131 |         RangeModule::range_update(&mut self.root, &(left..right - 1), true);
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/leetcode/editor/cn/solution_715.rs:135:53
[INFO] [stdout]     |
[INFO] [stdout] 135 |         RangeModule::query_range_node(&self.root, &(left..right - 1)).unwrap()
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/leetcode/editor/cn/solution_715.rs:139:53
[INFO] [stdout]     |
[INFO] [stdout] 139 |         RangeModule::range_update(&mut self.root, &(left..right - 1), false);
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `btree`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_513.rs:36:24
[INFO] [stdout]    |
[INFO] [stdout] 36 | use leetcode_prelude::{btree, TreeNode};
[INFO] [stdout]    |                        ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_offer_II_91.rs:51:18
[INFO] [stdout]    |
[INFO] [stdout] 51 |         for i in 1..n {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_293_3.rs:13:10
[INFO] [stdout]    |
[INFO] [stdout] 13 |         (0..=30).map(|i| {
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/leetcode/weekly/weekly_295_1.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 |             });;
[INFO] [stdout]    |                ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_295_2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_295_2.rs:25:47
[INFO] [stdout]    |
[INFO] [stdout] 25 |         if s.starts_with("$") && s.as_bytes()[1..s.len()].iter().all(|&x| x >= '0' as u8 && x <= '9' as u8) && s.len() > 1 {
[INFO] [stdout]    |                                               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_295_2.rs:26:31
[INFO] [stdout]    |
[INFO] [stdout] 26 |             Some(s.as_bytes()[1..s.len()]
[INFO] [stdout]    |                               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_1.rs:17:22
[INFO] [stdout]    |
[INFO] [stdout] 17 |             for i in 0..(len / 2) {
[INFO] [stdout]    |                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `max`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_296_4.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cmp::{max, min};
[INFO] [stdout]   |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LinkedList`, `VecDeque`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_296_4.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::{LinkedList, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:42:18
[INFO] [stdout]    |
[INFO] [stdout] 42 |         for i in 0..k {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:50:18
[INFO] [stdout]    |
[INFO] [stdout] 50 |         for i in 0..k {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:54:46
[INFO] [stdout]    |
[INFO] [stdout] 54 |         String::from_utf8_lossy(&self.before[len - min(10usize, len)..len]).to_string()
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:59:18
[INFO] [stdout]    |
[INFO] [stdout] 59 |         for i in 0..k {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:63:46
[INFO] [stdout]    |
[INFO] [stdout] 63 |         String::from_utf8_lossy(&self.before[len - min(10usize, len)..len]).to_string()
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::min`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_297_2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cmp::min;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_297_2.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 |                 for j in 0..n {
[INFO] [stdout]    |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_297_2.rs:18:30
[INFO] [stdout]    |
[INFO] [stdout] 18 |                     for j in 0..n {
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_297_3.rs:28:18
[INFO] [stdout]    |
[INFO] [stdout] 28 |         for i in 0..k {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::leetcode::Solution`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_297_4.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::leetcode::Solution;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_298_1.rs:23:18
[INFO] [stdout]    |
[INFO] [stdout] 23 |         for c in 'A'..='Z' {
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_298_2.rs:20:18
[INFO] [stdout]    |
[INFO] [stdout] 20 |         for i in 1..=10 {
[INFO] [stdout]    |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_298_3.rs:25:19
[INFO] [stdout]    |
[INFO] [stdout] 25 |         for i in (0..n-1).rev() {
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_298_3.rs:32:26
[INFO] [stdout]    |
[INFO] [stdout] 32 |                 for j in i + 1..n {
[INFO] [stdout]    |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_299_1.rs:11:18
[INFO] [stdout]    |
[INFO] [stdout] 11 |         for i in 0..n {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_299_1.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 |             for j in 0..n {
[INFO] [stdout]    |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_299_2.rs:18:18
[INFO] [stdout]    |
[INFO] [stdout] 18 |         for i in 1..n as usize {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_299_3.rs:18:18
[INFO] [stdout]    |
[INFO] [stdout] 18 |         for i in 1..=n {
[INFO] [stdout]    |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_300_3.rs:15:18
[INFO] [stdout]    |
[INFO] [stdout] 15 |         for i in 1..n as usize {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_300_3.rs:19:42
[INFO] [stdout]    |
[INFO] [stdout] 19 |             let aware_count: i32 = count[aware_index.max(0)..(i - 1)].iter().sum();
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::BTreeSet`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_301_2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::BTreeSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::FromIterator`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_301_2.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::iter::FromIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_4.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 |         for i in 1..=max_value {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_4.rs:15:18
[INFO] [stdout]    |
[INFO] [stdout] 15 |         for i in 2..=n as usize {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_4.rs:16:22
[INFO] [stdout]    |
[INFO] [stdout] 16 |             for j in 1..=max_value as usize {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_4.rs:17:26
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 for k in 1..=j {
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_302_3.rs:35:79
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let mut trimmed = nums.iter().enumerate().map(|(index, s)| (index, &s[start..]))
[INFO] [stdout]    |                                                                               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_302_4.rs:14:36
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let division = nums_divide[1..].iter().fold(nums_divide[0], |target, &x| Solution::gcd(target, x));
[INFO] [stdout]    |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_303_4.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::FromIterator`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_303_4.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::iter::FromIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_303_4.rs:21:18
[INFO] [stdout]    |
[INFO] [stdout] 21 |         for i in 1..=64usize {
[INFO] [stdout]    |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_303_4.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 |             for j in 1..=64usize {
[INFO] [stdout]    |                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeMap`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_303_3.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::{BTreeMap, BTreeSet, HashMap};
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::leetcode::Solution`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_303_3.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::leetcode::Solution;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_303_2.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 |         for i in 0..n {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_303_2.rs:13:22
[INFO] [stdout]    |
[INFO] [stdout] 13 |             for j in 0..n {
[INFO] [stdout]    |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_303_2.rs:15:26
[INFO] [stdout]    |
[INFO] [stdout] 15 |                 for k in 0..n {
[INFO] [stdout]    |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_304_2.rs:18:31
[INFO] [stdout]    |
[INFO] [stdout] 18 |         for &grade in &grades[1..n] {
[INFO] [stdout]    |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_305_1.rs:20:20
[INFO] [stdout]    |
[INFO] [stdout] 20 |         for num in 0..201usize - 2 * d {
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_306_1.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 |         for i in 0..n - 2 {
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_306_1.rs:13:22
[INFO] [stdout]    |
[INFO] [stdout] 13 |             for j in 0..n - 2 {
[INFO] [stdout]    |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/leetcode/weekly/weekly_306_4.rs:33:28
[INFO] [stdout]    |
[INFO] [stdout] 33 |                 let res = (start..=up).fold(0, |sum, d| {
[INFO] [stdout]    |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_79_4.rs:52:47
[INFO] [stdout]    |
[INFO] [stdout] 52 |                 return self.index(left_index, range.start..mid, right, val);
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_79_4.rs:56:44
[INFO] [stdout]    |
[INFO] [stdout] 56 |             return self.index(right_index, mid + 1..range.end, right_index, val)
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_79_4.rs:77:34
[INFO] [stdout]    |
[INFO] [stdout] 77 |             self.add(left_index, range.start..mid, index, val);
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_79_4.rs:79:35
[INFO] [stdout]    |
[INFO] [stdout] 79 |             self.add(right_index, mid + 1..range.end, index, val);
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_79_4.rs:93:54
[INFO] [stdout]    |
[INFO] [stdout] 93 |             book_tree: SegmentTree::<BookInfo>::new((0..n).map(|_| BookInfo::default()).collect()),
[INFO] [stdout]    |                                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/leetcode/biweekly/biweekly_79_4.rs:100:41
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let i = self.book_tree.index(0, 0..self.book_tree.len - 1, (max_row + 1) as usize, self.m - k);
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/leetcode/biweekly/biweekly_79_4.rs:104:50
[INFO] [stdout]     |
[INFO] [stdout] 104 |             let seats = self.book_tree.query_sum(i as usize..i as usize);
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/leetcode/biweekly/biweekly_79_4.rs:105:35
[INFO] [stdout]     |
[INFO] [stdout] 105 |             self.book_tree.add(0, 0..self.book_tree.len - 1, i as usize, k);
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_81_2.rs:13:22
[INFO] [stdout]    |
[INFO] [stdout] 13 |         let mut v = (0..n as usize).collect();
[INFO] [stdout]    |                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_81_2.rs:26:18
[INFO] [stdout]    |
[INFO] [stdout] 26 |         for i in 0..n as usize {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_81_2.rs:29:27
[INFO] [stdout]    |
[INFO] [stdout] 29 |                 result += (sum - group[&parent]);
[INFO] [stdout]    |                           ^                    ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 29 -                 result += (sum - group[&parent]);
[INFO] [stdout] 29 +                 result += sum - group[&parent];
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:39:32
[INFO] [stdout]    |
[INFO] [stdout] 39 |         self.build(left_index, range.start..mid);
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:40:33
[INFO] [stdout]    |
[INFO] [stdout] 40 |         self.build(right_index, mid + 1..range.end);
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:68:20
[INFO] [stdout]    |
[INFO] [stdout] 68 |         t.build(0, 0..len - 1);
[INFO] [stdout]    |                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:73:33
[INFO] [stdout]    |
[INFO] [stdout] 73 |         self.recursion_query(0, 0..self.len() - 1, range)
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:84:54
[INFO] [stdout]    |
[INFO] [stdout] 84 |             return self.recursion_query(right_index, mid + 1..range.end, query_range);
[INFO] [stdout]    |                                                      ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:86:53
[INFO] [stdout]    |
[INFO] [stdout] 86 |             return self.recursion_query(left_index, range.start..mid, query_range);
[INFO] [stdout]    |                                                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:88:57
[INFO] [stdout]    |
[INFO] [stdout] 88 |         let left_res = self.recursion_query(left_index, range.start..mid, query_range.start..mid);
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:88:75
[INFO] [stdout]    |
[INFO] [stdout] 88 |         let left_res = self.recursion_query(left_index, range.start..mid, query_range.start..mid);
[INFO] [stdout]    |                                                                           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:89:59
[INFO] [stdout]    |
[INFO] [stdout] 89 |         let right_res = self.recursion_query(right_index, mid + 1..range.end, mid + 1..query_range.end);
[INFO] [stdout]    |                                                           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:89:79
[INFO] [stdout]    |
[INFO] [stdout] 89 |         let right_res = self.recursion_query(right_index, mid + 1..range.end, mid + 1..query_range.end);
[INFO] [stdout]    |                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:99:31
[INFO] [stdout]    |
[INFO] [stdout] 99 |         self.recursion_set(0, 0..self.len() - 1, index, e);
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/algorithm/segment_tree.rs:111:45
[INFO] [stdout]     |
[INFO] [stdout] 111 |             self.recursion_set(right_index, mid + 1..range.end, index, e)
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/algorithm/segment_tree.rs:113:44
[INFO] [stdout]     |
[INFO] [stdout] 113 |             self.recursion_set(left_index, range.start..mid, index, e)
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/algorithm/segment_tree.rs:140:27
[INFO] [stdout]     |
[INFO] [stdout] 140 |     assert_eq!(tree.query(0..2), Some(Ticket { cost: -1 }));
[INFO] [stdout]     |                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/algorithm/segment_tree.rs:141:27
[INFO] [stdout]     |
[INFO] [stdout] 141 |     assert_eq!(tree.query(2..5), Some(Ticket { cost: 53 }));
[INFO] [stdout]     |                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/algorithm/segment_tree.rs:142:27
[INFO] [stdout]     |
[INFO] [stdout] 142 |     assert_eq!(tree.query(0..5), Some(Ticket { cost: 55 }));
[INFO] [stdout]     |                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/algorithm/segment_tree.rs:144:27
[INFO] [stdout]     |
[INFO] [stdout] 144 |     assert_eq!(tree.query(0..2), Some(Ticket { cost: 0 }));
[INFO] [stdout]     |                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Read`, `stdin`
[INFO] [stdout]  --> src/codeforces/scanner.rs:1:15
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::io::{Read, stdin};
[INFO] [stdout]   |               ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BorrowMut`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_715.rs:51:27
[INFO] [stdout]    |
[INFO] [stdout] 51 | use std::borrow::{Borrow, BorrowMut};
[INFO] [stdout]    |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Borrow`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_715.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 | use std::borrow::{Borrow, BorrowMut};
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_513.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | use std::borrow::Borrow;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_5.rs:26:31
[INFO] [stdout]    |
[INFO] [stdout] 26 |     pub fn longest_palindrome(s: String) -> String {
[INFO] [stdout]    |                               ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_13.rs:73:25
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn roman_to_int(s: String) -> i32 {
[INFO] [stdout]    |                         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_765.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |         let mut len: i32 = row.len() as i32;
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_765.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let mut fx = self.find(x) as usize;
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_765.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |         let mut fy = self.find(y) as usize;
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_354.rs:42:26
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn max_envelopes(mut envelopes: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]    |                          ----^^^^^^^^^
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `big`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn new(big: i32, medium: i32, small: i32) -> Self {
[INFO] [stdout]    |            ^^^ help: if this is intentional, prefix it with an underscore: `_big`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `medium`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:57:22
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn new(big: i32, medium: i32, small: i32) -> Self {
[INFO] [stdout]    |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_medium`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `small`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:57:35
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn new(big: i32, medium: i32, small: i32) -> Self {
[INFO] [stdout]    |                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_small`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `car_type`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:61:23
[INFO] [stdout]    |
[INFO] [stdout] 61 |     fn add_car(&self, car_type: i32) -> bool {
[INFO] [stdout]    |                       ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_car_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_224.rs:55:50
[INFO] [stdout]    |
[INFO] [stdout] 55 |             .fold(Vec::<Token>::new(), |mut acc, x| {
[INFO] [stdout]    |                                                  ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_224.rs:55:41
[INFO] [stdout]    |
[INFO] [stdout] 55 |             .fold(Vec::<Token>::new(), |mut acc, x| {
[INFO] [stdout]    |                                         ----^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_224.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let mut stack = s.as_bytes().iter()
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_706.rs:96:26
[INFO] [stdout]    |
[INFO] [stdout] 96 |             if let Some((k, v)) = bucket.iter_mut().find(|&&mut (k, v)| k == key) {
[INFO] [stdout]    |                          ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_706.rs:96:69
[INFO] [stdout]    |
[INFO] [stdout] 96 |             if let Some((k, v)) = bucket.iter_mut().find(|&&mut (k, v)| k == key) {
[INFO] [stdout]    |                                                                     ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_508.rs:65:61
[INFO] [stdout]    |
[INFO] [stdout] 65 |         if let Some((_, &count)) = sum.iter().max_by_key(|(&k, &v)| v) {
[INFO] [stdout]    |                                                             ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_508.rs:67:29
[INFO] [stdout]    |
[INFO] [stdout] 67 |                 .map(|(&k, &v)| k)
[INFO] [stdout]    |                             ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sum`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_294_4.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 |         let sum = strength.iter().enumerate()
[INFO] [stdout]   |             ^^^ help: if this is intentional, prefix it with an underscore: `_sum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `grid`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_295_4.rs:4:30
[INFO] [stdout]   |
[INFO] [stdout] 4 |     pub fn minimum_obstacles(grid: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]   |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_grid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |         for i in 0..k {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |         for i in 0..k {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         for i in 0..k {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_300_3.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |         let len = forget - delay;
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a1`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let mut a1 = amount[0];
[INFO] [stdout]    |                 ^^ help: if this is intentional, prefix it with an underscore: `_a1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a2`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 |         let mut a2 = amount[1];
[INFO] [stdout]    |                 ^^ help: if this is intentional, prefix it with an underscore: `_a2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a3`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut a3 = amount[2];
[INFO] [stdout]    |                 ^^ help: if this is intentional, prefix it with an underscore: `_a3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let mut a1 = amount[0];
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 |         let mut a2 = amount[1];
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut a3 = amount[2];
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_2.rs:36:57
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let index = self.nums.iter().enumerate().find(|(i, &x)| x).unwrap().0;
[INFO] [stdout]    |                                                         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_302_3.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let mut trimmed = nums.iter().enumerate().map(|(index, s)| (index, &s[start..]))
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_302_4.rs:17:47
[INFO] [stdout]    |
[INFO] [stdout] 17 |         match nums.iter().enumerate().find(|&(i, &x)| division % x == 0) {
[INFO] [stdout]    |                                               ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_303_4.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 |         let mut count = nums.iter().map(|&x| Solution::bit_count(x as u32))
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_305_1.rs:14:73
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let pos = nums.iter().enumerate().fold(vec![0; 201], |mut res, (idx, &num)| {
[INFO] [stdout]    |                                                                         ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_305_2.rs:12:28
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn reachable_nodes(n: i32, edges: Vec<Vec<i32>>, restricted: Vec<i32>) -> i32 {
[INFO] [stdout]    |                            ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nums`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_305_3.rs:12:28
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn valid_partition(nums: Vec<i32>) -> bool {
[INFO] [stdout]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_nums`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_306_3.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |         let mut pattern: Vec<_> = pattern.as_bytes().iter()
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_79_4.rs:18:21
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn merge(&self, a: &Self, b: &Self) -> Self {
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/leetcode/biweekly/biweekly_79_4.rs:110:27
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn scatter(&mut self, k: i32, max_row: i32) -> bool {
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_row`
[INFO] [stdout]    --> src/leetcode/biweekly/biweekly_79_4.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn scatter(&mut self, k: i32, max_row: i32) -> bool {
[INFO] [stdout]     |                                   ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_80_2.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let mut spells = spells;
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entry`
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_81_2.rs:32:21
[INFO] [stdout]    |
[INFO] [stdout] 32 |                 let entry = group.entry(parent).or_insert(1i64);
[INFO] [stdout]    |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_entry`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `last_bus` is assigned to, but never used
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_2.rs:24:17
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let mut last_bus = 0;
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_last_bus` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `last_count` is assigned to, but never used
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_2.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |         let mut last_count = 0;
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_last_count` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_bus` is never read
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_2.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |             last_bus = t;
[INFO] [stdout]    |             ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_count` is never read
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_2.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |             last_count = count;
[INFO] [stdout]    |             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_3.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |         let mut i = 0;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_83_1.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 |             let mut counter = ranks.iter().fold(vec![0; 13], |mut c, &x| {
[INFO] [stdout]    |                 ----^^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pattern`
[INFO] [stdout]   --> src/algorithm/kmp.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn index_of(&self, pattern: &String) -> Option<usize> {
[INFO] [stdout]    |                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pattern`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let mut tree: Vec<Option<T>> = vec![None; len * 4];
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NumMatrix` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_304.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | struct NumMatrix {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `sum_region` are never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_304.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | impl NumMatrix {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 44 |
[INFO] [stdout] 45 |     fn new(matrix: Vec<Vec<i32>>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     fn sum_region(&self, row1: i32, col1: i32, row2: i32, col2: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ParkingSystem` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:46:8
[INFO] [stdout]    |
[INFO] [stdout] 46 | struct ParkingSystem {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `add_car` are never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | impl ParkingSystem {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 56 |
[INFO] [stdout] 57 |     fn new(big: i32, medium: i32, small: i32) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     fn add_car(&self, car_type: i32) -> bool {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Number`, `Add`, `Minus`, `Quote`, `End`, and `Ignore` are never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_224.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         enum Token {
[INFO] [stdout]    |              ----- variants in this enum
[INFO] [stdout] 47 |             Number(i32),
[INFO] [stdout]    |             ^^^^^^
[INFO] [stdout] 48 |             Add,
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 49 |             Minus,
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout] 50 |             Quote,
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout] 51 |             End,
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 52 |             Ignore
[INFO] [stdout]    |             ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Token` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MyHashSet` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_705.rs:50:8
[INFO] [stdout]    |
[INFO] [stdout] 50 | struct MyHashSet {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add`, `remove`, `contains`, and `hash` are never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_705.rs:62:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | impl MyHashSet {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 62 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     fn add(&mut self, key: i32) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     fn remove(&mut self, key: i32) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     fn contains(&self, key: i32) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     fn hash(key: i32) -> usize {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Result` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_838.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | struct Result {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NumArray` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_307.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | struct NumArray {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `update`, and `sum_range` are never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_307.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | impl NumArray {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 62 |
[INFO] [stdout] 63 |     pub fn new(nums: Vec<i32>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 73 |     fn update(&mut self, index: i32, val: i32) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |     fn sum_range(&self, left: i32, right: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `book_count` and `max_book_count` are never read
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_732.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 64 | struct BookNode {
[INFO] [stdout]    |        -------- fields in this struct
[INFO] [stdout] 65 |     book_count: i32,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 66 |     max_book_count: i32
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MyCalendarThree` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_732.rs:78:8
[INFO] [stdout]    |
[INFO] [stdout] 78 | struct MyCalendarThree {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `book`, and `update` are never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_732.rs:88:8
[INFO] [stdout]    |
[INFO] [stdout] 86 | impl MyCalendarThree {
[INFO] [stdout]    | -------------------- associated items in this implementation
[INFO] [stdout] 87 |
[INFO] [stdout] 88 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 94 |     fn book(&mut self, start: i32, end: i32) -> i32 {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99 |     fn update(&mut self, start: i32, end: i32, l: i32, r: i32, index: i32) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Clamp` is never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_498.rs:37:7
[INFO] [stdout]    |
[INFO] [stdout] 37 | trait Clamp {
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `find_pairs_worse` is never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_532.rs:81:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | impl Solution {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 81 |     fn find_pairs_worse(nums: Vec<i32>, k: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RangeModule` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_715.rs:65:8
[INFO] [stdout]    |
[INFO] [stdout] 65 | struct RangeModule {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `split` is never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_715.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | impl RangeNode {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 80 |     fn split(&mut self) {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_range`, `query_range`, `remove_range`, `query_range_node`, and `range_update` are never used
[INFO] [stdout]    --> src/leetcode/editor/cn/solution_715.rs:118:8
[INFO] [stdout]     |
[INFO] [stdout] 116 | impl RangeModule {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 117 |
[INFO] [stdout] 118 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     fn add_range(&mut self, left: i32, right: i32) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     fn query_range(&mut self, left: i32, right: i32) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     fn remove_range(&mut self, left: i32, right: i32) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     fn query_range_node(node: &Option<Rc<RefCell<RangeNode>>>, query_range: &Range<i32>) -> Option<bool> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     fn range_update(node: &Option<Rc<RefCell<RangeNode>>>, update_range: &Range<i32>, track: bool) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TextEditor` is never constructed
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct TextEditor {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_text`, `delete_text`, `cursor_left`, and `cursor_right` are never used
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl TextEditor {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 28 |
[INFO] [stdout] 29 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     fn add_text(&mut self, text: String) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     fn delete_text(&mut self, k: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     fn cursor_left(&mut self, k: i32) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     fn cursor_right(&mut self, k: i32) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SmallestInfiniteSet` is never constructed
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_2.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | struct SmallestInfiniteSet {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `pop_smallest`, and `add_back` are never used
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_2.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl SmallestInfiniteSet {
[INFO] [stdout]    | ------------------------ associated items in this implementation
[INFO] [stdout] 28 |
[INFO] [stdout] 29 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     fn pop_smallest(&mut self) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     fn add_back(&mut self, num: i32) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FoodRatings` is never constructed
[INFO] [stdout]   --> src/leetcode/weekly/weekly_303_3.rs:50:8
[INFO] [stdout]    |
[INFO] [stdout] 50 | struct FoodRatings {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `change_rating`, and `highest_rated` are never used
[INFO] [stdout]   --> src/leetcode/weekly/weekly_303_3.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | impl FoodRatings {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 56 |
[INFO] [stdout] 57 |     fn new(foods: Vec<String>, cuisines: Vec<String>, ratings: Vec<i32>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     fn change_rating(&mut self, food: String, new_rating: i32) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     fn highest_rated(&self, cuisine: String) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `node` is never read
[INFO] [stdout]   --> src/leetcode/weekly/weekly_304_3.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct Parent {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 14 |     node: i32,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Parent` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SINGLE` is never used
[INFO] [stdout]  --> src/leetcode/weekly/weekly_305_3.rs:7:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | const SINGLE: i32 = 0;
[INFO] [stdout]   |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EQUAL` is never used
[INFO] [stdout]  --> src/leetcode/weekly/weekly_305_3.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | const EQUAL: i32 = 1;
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ASC` is never used
[INFO] [stdout]  --> src/leetcode/weekly/weekly_305_3.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 | const ASC: i32 = 2;
[INFO] [stdout]   |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BookMyShow` is never constructed
[INFO] [stdout]  --> src/leetcode/biweekly/biweekly_79_4.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct BookMyShow {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `BookOperation` is never used
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_79_4.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 | trait BookOperation {
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `gather`, and `scatter` are never used
[INFO] [stdout]    --> src/leetcode/biweekly/biweekly_79_4.rs:91:8
[INFO] [stdout]     |
[INFO] [stdout] 89  | impl BookMyShow {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 90  |
[INFO] [stdout] 91  |     fn new(n: i32, m: i32) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 99  |     fn gather(&mut self, k: i32, max_row: i32) -> Vec<i32> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     fn scatter(&mut self, k: i32, max_row: i32) -> bool {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NumberContainers` is never constructed
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_83_3.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct NumberContainers {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `change`, and `find` are never used
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_83_3.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl NumberContainers {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 23 |
[INFO] [stdout] 24 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn change(&mut self, index: i32, number: i32) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     fn find(&self, number: i32) -> i32 {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `index_of` is never used
[INFO] [stdout]  --> src/algorithm/kmp.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait KmpSearch {
[INFO] [stdout]   |           --------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 4 |     fn index_of(&self, pattern: &Self::T) -> Option<usize>;
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gcd` is never used
[INFO] [stdout]  --> src/algorithm/mod.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn gcd(a: i32, b: i32) -> i32 {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `buffer` is never read
[INFO] [stdout]  --> src/codeforces/scanner.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct Scanner {
[INFO] [stdout]   |        ------- field in this struct
[INFO] [stdout] 5 |     buffer: Vec<String>,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `solution_offer_II_91` should have a snake case name
[INFO] [stdout]   --> src/leetcode/editor/cn/mod.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub mod solution_offer_II_91;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `solution_offer_ii_91`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `Range` type
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_715.rs:73:24
[INFO] [stdout]    |
[INFO] [stdout] 73 | impl RangeOps<i32> for Range<i32> {
[INFO] [stdout]    |                        ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D trait-impl-range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `Range` type
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:18:26
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl RangeOps<usize> for Range<usize> {
[INFO] [stdout]    |                          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:72:32
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn query(&self, range: Range<usize>) -> Option<T> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D explicit-range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors; 217 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `leetcode` (lib) due to 4 previous errors; 217 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused import: `BorrowMut`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_715.rs:51:27
[INFO] [stdout]    |
[INFO] [stdout] 51 | use std::borrow::{Borrow, BorrowMut};
[INFO] [stdout]    |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Borrow`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_715.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 | use std::borrow::{Borrow, BorrowMut};
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_513.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | use std::borrow::Borrow;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_5.rs:26:31
[INFO] [stdout]    |
[INFO] [stdout] 26 |     pub fn longest_palindrome(s: String) -> String {
[INFO] [stdout]    |                               ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_13.rs:73:25
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn roman_to_int(s: String) -> i32 {
[INFO] [stdout]    |                         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_765.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |         let mut len: i32 = row.len() as i32;
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_765.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let mut fx = self.find(x) as usize;
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_765.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |         let mut fy = self.find(y) as usize;
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_354.rs:42:26
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn max_envelopes(mut envelopes: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]    |                          ----^^^^^^^^^
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `big`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn new(big: i32, medium: i32, small: i32) -> Self {
[INFO] [stdout]    |            ^^^ help: if this is intentional, prefix it with an underscore: `_big`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `medium`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:57:22
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn new(big: i32, medium: i32, small: i32) -> Self {
[INFO] [stdout]    |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_medium`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `small`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:57:35
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn new(big: i32, medium: i32, small: i32) -> Self {
[INFO] [stdout]    |                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_small`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `car_type`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:61:23
[INFO] [stdout]    |
[INFO] [stdout] 61 |     fn add_car(&self, car_type: i32) -> bool {
[INFO] [stdout]    |                       ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_car_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_224.rs:55:50
[INFO] [stdout]    |
[INFO] [stdout] 55 |             .fold(Vec::<Token>::new(), |mut acc, x| {
[INFO] [stdout]    |                                                  ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_224.rs:55:41
[INFO] [stdout]    |
[INFO] [stdout] 55 |             .fold(Vec::<Token>::new(), |mut acc, x| {
[INFO] [stdout]    |                                         ----^^^
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_224.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let mut stack = s.as_bytes().iter()
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_706.rs:96:26
[INFO] [stdout]    |
[INFO] [stdout] 96 |             if let Some((k, v)) = bucket.iter_mut().find(|&&mut (k, v)| k == key) {
[INFO] [stdout]    |                          ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_706.rs:96:69
[INFO] [stdout]    |
[INFO] [stdout] 96 |             if let Some((k, v)) = bucket.iter_mut().find(|&&mut (k, v)| k == key) {
[INFO] [stdout]    |                                                                     ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_508.rs:65:61
[INFO] [stdout]    |
[INFO] [stdout] 65 |         if let Some((_, &count)) = sum.iter().max_by_key(|(&k, &v)| v) {
[INFO] [stdout]    |                                                             ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_508.rs:67:29
[INFO] [stdout]    |
[INFO] [stdout] 67 |                 .map(|(&k, &v)| k)
[INFO] [stdout]    |                             ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sum`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_294_4.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 |         let sum = strength.iter().enumerate()
[INFO] [stdout]   |             ^^^ help: if this is intentional, prefix it with an underscore: `_sum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `grid`
[INFO] [stdout]  --> src/leetcode/weekly/weekly_295_4.rs:4:30
[INFO] [stdout]   |
[INFO] [stdout] 4 |     pub fn minimum_obstacles(grid: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]   |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_grid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |         for i in 0..k {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |         for i in 0..k {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_296_4.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         for i in 0..k {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_300_3.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |         let len = forget - delay;
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a1`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let mut a1 = amount[0];
[INFO] [stdout]    |                 ^^ help: if this is intentional, prefix it with an underscore: `_a1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a2`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 |         let mut a2 = amount[1];
[INFO] [stdout]    |                 ^^ help: if this is intentional, prefix it with an underscore: `_a2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a3`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut a3 = amount[2];
[INFO] [stdout]    |                 ^^ help: if this is intentional, prefix it with an underscore: `_a3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let mut a1 = amount[0];
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 |         let mut a2 = amount[1];
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_1.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut a3 = amount[2];
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_301_2.rs:36:57
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let index = self.nums.iter().enumerate().find(|(i, &x)| x).unwrap().0;
[INFO] [stdout]    |                                                         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_302_3.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |         let mut trimmed = nums.iter().enumerate().map(|(index, s)| (index, &s[start..]))
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_302_4.rs:17:47
[INFO] [stdout]    |
[INFO] [stdout] 17 |         match nums.iter().enumerate().find(|&(i, &x)| division % x == 0) {
[INFO] [stdout]    |                                               ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_303_4.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 |         let mut count = nums.iter().map(|&x| Solution::bit_count(x as u32))
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_305_1.rs:14:73
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let pos = nums.iter().enumerate().fold(vec![0; 201], |mut res, (idx, &num)| {
[INFO] [stdout]    |                                                                         ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_305_2.rs:12:28
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn reachable_nodes(n: i32, edges: Vec<Vec<i32>>, restricted: Vec<i32>) -> i32 {
[INFO] [stdout]    |                            ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nums`
[INFO] [stdout]   --> src/leetcode/weekly/weekly_305_3.rs:12:28
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn valid_partition(nums: Vec<i32>) -> bool {
[INFO] [stdout]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_nums`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/weekly/weekly_306_3.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |         let mut pattern: Vec<_> = pattern.as_bytes().iter()
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_79_4.rs:18:21
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn merge(&self, a: &Self, b: &Self) -> Self {
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/leetcode/biweekly/biweekly_79_4.rs:110:27
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn scatter(&mut self, k: i32, max_row: i32) -> bool {
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_row`
[INFO] [stdout]    --> src/leetcode/biweekly/biweekly_79_4.rs:110:35
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn scatter(&mut self, k: i32, max_row: i32) -> bool {
[INFO] [stdout]     |                                   ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_80_2.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let mut spells = spells;
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entry`
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_81_2.rs:32:21
[INFO] [stdout]    |
[INFO] [stdout] 32 |                 let entry = group.entry(parent).or_insert(1i64);
[INFO] [stdout]    |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_entry`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `last_bus` is assigned to, but never used
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_2.rs:24:17
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let mut last_bus = 0;
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_last_bus` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `last_count` is assigned to, but never used
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_2.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |         let mut last_count = 0;
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_last_count` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_bus` is never read
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_2.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |             last_bus = t;
[INFO] [stdout]    |             ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_count` is never read
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_2.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |             last_count = count;
[INFO] [stdout]    |             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_82_3.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |         let mut i = 0;
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_83_1.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 |             let mut counter = ranks.iter().fold(vec![0; 13], |mut c, &x| {
[INFO] [stdout]    |                 ----^^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pattern`
[INFO] [stdout]   --> src/algorithm/kmp.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn index_of(&self, pattern: &String) -> Option<usize> {
[INFO] [stdout]    |                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pattern`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/algorithm/segment_tree.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let mut tree: Vec<Option<T>> = vec![None; len * 4];
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NumMatrix` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_304.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | struct NumMatrix {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `sum_region` are never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_304.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | impl NumMatrix {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 44 |
[INFO] [stdout] 45 |     fn new(matrix: Vec<Vec<i32>>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     fn sum_region(&self, row1: i32, col1: i32, row2: i32, col2: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ParkingSystem` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:46:8
[INFO] [stdout]    |
[INFO] [stdout] 46 | struct ParkingSystem {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `add_car` are never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_1603.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | impl ParkingSystem {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 56 |
[INFO] [stdout] 57 |     fn new(big: i32, medium: i32, small: i32) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     fn add_car(&self, car_type: i32) -> bool {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Number`, `Add`, `Minus`, `Quote`, `End`, and `Ignore` are never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_224.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         enum Token {
[INFO] [stdout]    |              ----- variants in this enum
[INFO] [stdout] 47 |             Number(i32),
[INFO] [stdout]    |             ^^^^^^
[INFO] [stdout] 48 |             Add,
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 49 |             Minus,
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout] 50 |             Quote,
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout] 51 |             End,
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 52 |             Ignore
[INFO] [stdout]    |             ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Token` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MyHashSet` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_705.rs:50:8
[INFO] [stdout]    |
[INFO] [stdout] 50 | struct MyHashSet {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add`, `remove`, `contains`, and `hash` are never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_705.rs:62:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | impl MyHashSet {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 62 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     fn add(&mut self, key: i32) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     fn remove(&mut self, key: i32) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     fn contains(&self, key: i32) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     fn hash(key: i32) -> usize {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Result` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_838.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | struct Result {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NumArray` is never constructed
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_307.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | struct NumArray {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `update`, and `sum_range` are never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_307.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | impl NumArray {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 62 |
[INFO] [stdout] 63 |     pub fn new(nums: Vec<i32>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 73 |     fn update(&mut self, index: i32, val: i32) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |     fn sum_range(&self, left: i32, right: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Clamp` is never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_498.rs:37:7
[INFO] [stdout]    |
[INFO] [stdout] 37 | trait Clamp {
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `find_pairs_worse` is never used
[INFO] [stdout]   --> src/leetcode/editor/cn/solution_532.rs:81:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | impl Solution {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 81 |     fn find_pairs_worse(nums: Vec<i32>, k: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `node` is never read
[INFO] [stdout]   --> src/leetcode/weekly/weekly_304_3.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct Parent {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 14 |     node: i32,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Parent` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SINGLE` is never used
[INFO] [stdout]  --> src/leetcode/weekly/weekly_305_3.rs:7:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | const SINGLE: i32 = 0;
[INFO] [stdout]   |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EQUAL` is never used
[INFO] [stdout]  --> src/leetcode/weekly/weekly_305_3.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | const EQUAL: i32 = 1;
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ASC` is never used
[INFO] [stdout]  --> src/leetcode/weekly/weekly_305_3.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 | const ASC: i32 = 2;
[INFO] [stdout]   |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BookMyShow` is never constructed
[INFO] [stdout]  --> src/leetcode/biweekly/biweekly_79_4.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct BookMyShow {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `BookOperation` is never used
[INFO] [stdout]   --> src/leetcode/biweekly/biweekly_79_4.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 | trait BookOperation {
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `gather`, and `scatter` are never used
[INFO] [stdout]    --> src/leetcode/biweekly/biweekly_79_4.rs:91:8
[INFO] [stdout]     |
[INFO] [stdout] 89  | impl BookMyShow {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 90  |
[INFO] [stdout] 91  |     fn new(n: i32, m: i32) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 99  |     fn gather(&mut self, k: i32, max_row: i32) -> Vec<i32> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     fn scatter(&mut self, k: i32, max_row: i32) -> bool {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `index_of` is never used
[INFO] [stdout]  --> src/algorithm/kmp.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait KmpSearch {
[INFO] [stdout]   |           --------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 4 |     fn index_of(&self, pattern: &Self::T) -> Option<usize>;
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gcd` is never used
[INFO] [stdout]  --> src/algorithm/mod.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn gcd(a: i32, b: i32) -> i32 {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `buffer` is never read
[INFO] [stdout]  --> src/codeforces/scanner.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct Scanner {
[INFO] [stdout]   |        ------- field in this struct
[INFO] [stdout] 5 |     buffer: Vec<String>,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `solution_offer_II_91` should have a snake case name
[INFO] [stdout]   --> src/leetcode/editor/cn/mod.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub mod solution_offer_II_91;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `solution_offer_ii_91`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 201 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "65749155186efd87dd056252d565498aa8ab2b8ea21f72725b38ff2745b68f0c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "65749155186efd87dd056252d565498aa8ab2b8ea21f72725b38ff2745b68f0c", kill_on_drop: false }`
[INFO] [stdout] 65749155186efd87dd056252d565498aa8ab2b8ea21f72725b38ff2745b68f0c
